Career 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London Bergamo Challenger Sofia Open - Sofia Nonthaburi 3 Challenger Nonthaburi 1 Challenger Nonthaburi 2 Challenger Pune Challenger Bengaluru Challenger M25 New Delhi Taipei Challenger Guangzhou Challenger Zhangjiagang Challenger Guangzhou Challenger Colombia F3 Colombia F4 Colombia F3 Colombia F5 Colombia F6 Brazil F7 Brazil F9 Brazil F10 Brazil F11 Venezuela F4 Venezuela F5 Brazil F16 Brazil F17 Brazil F18 Colombia F1 Colombia F2 Colombia F3 Colombia F4 Russia F3 Venezuela F1 Venezuela F2 Brazil F14 Brazil F15 Nicaragua F1 El Salvador F2 Brazil F23 Brazil F24 Nigeria F3 Nigeria F4 Colombia F1 Colombia F2 Spain F11 Spain F12 Spain F13 Russia F2 Colombia F3 Colombia F4 Brazil F5 Brazil F6 Brazil F7 Brazil F8 Ukraine F3 Austria F4 Austria F5 Austria F6 Venezuela F4 Venezuela F5 Venezuela F6 Russia F3 Russia F5 Russia F6 Venezuela F8 Venezuela F9 Colombia F1 Ivory Coast F1 Colombia F2 Ivory Coast F2 Russia F1 Russia F2 Venezuela F1 Venezuela F2 Venezuela F3 Usa F12 Usa F13 Colombia F3 Russia F3 Colombia F4 Colombia F5 Bosnia & Herzegovina F2 Italy F1 Kazakhstan F1 Italy F2 Kazakhstan F2 Italy F3 France F6 France F7 Italy F6 Italy F12 Italy F15 Italy F14 Italy F21 Italy F22 Venezuela F5 Venezuela F6 Colombia F1 Colombia F2 Spain F7 Turkey F9 Turkey F10 Turkey F11 Turkey F12 Italy F6 Italy F7 Italy F9 Italy F10 Ecuador F4 Ecuador F5 Colombia F3 Colombia F4 Colombia F5 Chile F1 Chile F3 Spain F14 Italy F20 Colombia F3 Colombia F4 Canada F1 (Gatineau) Canada F2 (Sherbrooke) M15 Sunrise M25 Tulsa M25 Iowa City M15 Horgen M25 Oviedo M25 Madrid M25 Weston M25 Palm Coast M25 Naples M25 Naples M25 Naples M25 Pensacola M25 Santo Domingo M25 Marburg M25 Denia M25 Muttenz M25 Caslano M25 Aparecida de Goiania M25 Cancun M25 Cancun M25 Anapoima M25 Medellin M25 New Delhi M25 Lucknow M25 Jakarta M25 Jakarta M25 Champaign M25 Dallas Copa Petrobras Bogota - Bogota M25 Hua Hin M25 Mumbai M15 Tianjin M25 Tianjin Bogota Challenger - Bogota President's Cup - Astana Korat Challenger Open Sabadell Atlantico - Barcelona Seguros Bogota Open - Bogota Seguros Bolivar Open - Medellin Copa Petrobras Colombia - Bogota Khanty-Mansiysk Challenger BH Tennis Open - Belo Horizonte Credicard Citi Mastercard Tennis Cup 2007 - Campos do Jordao Seguros Bolivar Open - Medellin Copa Petrobras Colombia - Bogota Challenger Ciudad de Guayaquil - Guayaquil Bancolombia Open - Bogota Seguros Bolivar Open - Bogota V Manta Open-Trofeo Ricardo Delgado Aray - Manta Geneva Challenger - Geneva XIV Challenger ATP Club Premium Open - Quito Seguros Bolivar Open - Cali Copa Petrobras-Colombia - Bogota Bancolombia Open - Cali IV Challenger Ciudad De Guayaquil - Guayaquil Seguros Bolivar Open - Medellin IPP Open - Helsinki Salinas Challenger Bucaramanga Challenger Bogota Challenger San Luis Potosi Challenger Karlsruhe Challenger Bogota Challenger Manta Challenger Penza Challenger Saransk Challenger Geneva Challenger Como Challenger Cali Challenger Bogota Challenger Ljubljana Challenger Quito Challenger Sacramento Challenger Tiburon Challenger Astana Challenger Medellin Challenger Helsinki Challenger Sao Paulo Challenger Salinas Challenger Bucaramanga Challenger Kazan Challenger Belgrade Challenger Sarajevo Challenger Bogota Challenger San Remo Challenger Biella Challenger Fergana Challenger Alessandria Challenger Milan Challenger Bogota Challenger Orbetello Challenger Saransk Challenger San Marino Challenger Kitzbuhel Challenger Como Challenger Seville Challenger Todi Challenger Cali Challenger Quito Challenger Astana Challenger Medellin Challenger Guayaquil Challenger Bucaramanga Challenger Kazan Challenger Casablanca Challenger Salinas Challenger Monza Challenger Rome Challenger Rome Challenger Bordeaux Challenger Furth Challenger Kosice Challenger Milan Challenger Braunschweig Challenger Bogota Challenger Orbetello Challenger Manta Challenger Segovia Challenger Binghamton Challenger Seville Challenger Szczecin Challenger Aguascalenties Challenger Madrid Challenger Sacramento Challenger Tiburon Challenger Medellin Challenger Bucaramanga Challenger Kazan Challenger Quimper Challenger Meknes Challenger Casablanca Challenger Salinas Challenger Santiago Challenger Rabat Challenger Marrakech Challenger Barranquilla Challenger San Luis Potosi Challenger Prague Challenger Bordeaux Challenger Caltanissetta Challenger Nottingham Challenger Monza Challenger Nottingham-2 Challenger Panama City Challenger Bogota Challenger Penza Challenger Astana Challenger Orbetello Challenger San Marino Challenger Fergana Challenger Pozoblanco Challenger Cordenons Challenger Segovia Challenger St. Remy Challenger Cali Challenger Orleans Challenger Mons Challenger Rio De Janeiro Challenger Porto Alegre Challenger Geneva Challenger Medellin Challenger Guayaquil Challenger Loughborough Challenger Helsinki Challenger Tyumen Challenger Sao Paulo Challenger Bucaramanga Challenger Salinas Challenger Pereira Challenger Santiago Challenger Barranquilla Challenger Panama City Challenger Blois Challenger Manta Challenger Portoroz Challenger IPP Open - Helsinki Medellin Challenger Vancouver Challenger Sao Paulo Challenger Aptos Challenger Rio De Janeiro Challenger Kaoshuing Challenger Sao Paulo Challenger Tashkent Challenger Sao Jose Do Rio Preto Challenger Buenos Aires Challenger Kazan Challenger Geneva Challenger Bogota Challenger Sao Paulo Challenger Tour Finals Helsinki Challenger Tyumen Challenger Zagreb Challenger Sao Paulo Challenger Heilbronn Challenger Bucaramanga Challenger Chennai Challenger Kolkata Challenger St. Brieuc Challenger Zagreb Challenger Tunis Challenger Winnetka Challenger Portoroz Challenger Lexington Challenger Aptos Challenger Geneva Challenger - Geneva Medellin Challenger St. Remy Challenger Quimper Challenger Izmir Challenger Pereira Challenger Cali Challenger Tashkent Challenger San Juan Challenger Cordoba Challenger Eckental Challenger Ortisei Challenger Guayaquil Challenger Ostrava Challenger Bucaramanga Challenger Santo Domingo Challenger Santiago Challenger Kazan Challenger Raanana Challenger Batman Challenger Sarasota Challenger Mersin Challenger IPP Open - Helsinki Karshi Challenger Furth Challenger Caltanissetta Challenger Moscow Challenger Blois Challenger Marburg Challenger Padova Challenger Todi Challenger Astana Challenger Segovia Challenger Portoroz Challenger Vancouver Challenger Heilbronn Challenger Barranquilla Challenger Pereira Challenger Pereira Challenger Agri Challenger Tashkent Challenger Santiago Challenger Lima Challenger Pune Challenger Hua Hin Challenger Bogota Challenger Ortisei Challenger Happy Valley Challenger Canberra Challenger Bucaramanga Challenger Santo Domingo Challenger Wroclaw Challenger Morelos Challenger Irving Challenger Guadalajara Challenger Raanana Challenger Leon Challenger Le Gosier Challenger Aix En Provence Challenger Heilbronn Challenger Vicenza Challenger Caltanissetta Challenger Blois Challenger Milan Challenger Bastad Challenger Cali Challenger Recanati Challenger Astana Challenger Granby Challenger Barranquilla Challenger Medellin Challenger Stockton Challenger Monterrey Challenger Pune Challenger Ortisei Challenger Brescia Challenger Montevideo Challenger Rennes Challenger Budapest Challenger Zhuhai Challenger Shenzhen Challenger Calabasas Challenger Sarasota Challenger New Delhi Challenger Tallahassee Challenger Savannah Challenger Cremona Challenger Vicenza Challenger Prostejov Challenger Medellin Challenger Astana Challenger Chengdu Challenger Jinan Challenger Floridablanca Challenger Pereira Challenger Bogota Challenger Tiburon Challenger Kaohsiung Challenger Stockton Challenger Rome Challenger Fairfield Challenger Cali Challenger Guayaquil Challenger Montevideo Challenger Santiago Challenger Noumea Challenger Manerbio Challenger Newport Beach Challenger Bogota Challenger Morelos Challenger Drummondville Challenger San Luis Potosi Challenger Taipei City Challenger Guadalajara Challenger Nanchang Challenger Anning Challenger Leon Challenger Puerto Vallarta Challenger Vicenza Challenger L'Aquila Challenger Milan Challenger Recanati Challenger Perugia Challenger Astana Challenger Cali Challenger Oberstaufen Challenger Chicago Challenger Cary Challenger Columbus Challenger Tiburon Challenger Campinas Challenger Marburg Challenger Calgary Challenger Las Vegas Challenger Charlottesville Challenger Eckental Challenger Bratislava Challenger Knoxville Challenger Houston Challenger Orlando Challenger Columbus Challenger Punta Del Este Challenger Bergamo Challenger Morelos Challenger Pereira Challenger Indian Wells Challenger Phoenix Challenger St. Brieuc Challenger Taipei City Challenger Sarasota Challenger Tallahassee Challenger Seoul Challenger Savannah Challenger Busan Challenger Geneva Challenger Braga Challenger Pereira Challenger Gwangju Challenger Samarkand Challenger Surbiton Challenger Little Rock Challenger Nottingham Challenger Columbus Challenger Ilkley Challenger Recanati Challenger Winnetka Challenger Nur-Sultan Challenger Binghamton Challenger Braunschweig Challenger Furth Challenger Vancouver Challenger Cordenons Challenger L'Aquila Challenger Seville Challenger Rome Challenger Orleans Challenger Nur-Sultan Challenger Campinas Challenger Santo Domingo Challenger Brest Challenger Lima Challenger Eckental Challenger Guayaquil Challenger Montevideo Challenger Canberra Challenger Bengalaru Challenger Morelos Challenger Indian Wells Challenger Prostejov Challenger Istanbul Challenger Eckental Challenger Sao Paulo Challenger Biella 2 Challenger Nur-Sultan 1 Challenger Nur-Sultan 2 Challenger Lugano Challenger Marbella Challenger Belgrade Challenger Salinas Challenger Salinas 2 Challenger Zagreb Challenger Nottingham 1 Challenger Nottingham 2 Challenger Iasi Challenger Cordenons Challenger Mallorca Challenger Istanbul 2 Challenger Quito Challenger Ambato Challenger Lima Challenger Bogota Challenger Guayaquil Challenger Brasilia Challenger Sao Paulo Challenger Rio De Janeiro Challenger Bengalaru 1 Challenger San Luis Potosi Challenger Tallahassee Challenger Santiago Challenger Prostejov Challenger Porto Challenger Nur-Sultan Challenger Segovia Challenger Medellin Challenger Nonthaburi 1 Challenger Nonthaburi 2 Challenger Nonthaburi 3 Challenger Istanbul Challenger Hamburg Challenger Brest Challenger Nonthaburi 1 Challenger Rovereto Challenger Pau Challenger Seoul Challenger Gwangju Challenger Busan Challenger Vicenza Challenger Blois Challenger Gatineau Challenger Tashkent Challenger Istanbul Challenger Bengalaru 2 Challenger Mexico City Challenger Bordeaux Challenger Heilbronn Challenger Ilkley Challenger Granby Challenger Troisdorf Challenger Bratislava Challenger Malaga Challenger Ismaning Challenger Nonthaburi 2 Challenger Nonthaburi 3 Challenger Vilnius Challenger Cherbourg Challenger Pozoblanco Challenger Meknes Challenger Marrakech Challenger Skopje Challenger Campinas Challenger Florianopolis Challenger Shenzhen 1 Challenger SAP Open - San Jose Jinan Challenger Guangzhou Challenger Astana Challenger US Men's Clay Court Championship - Houston Bergamo Challenger Citi Open - Washington ATP Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg ATP Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Dubai Duty Free Tennis Championships - Dubai Interwetten Austrian Open - Kitzbuhel Shenzhen Open - Shenzhen Salinas Challenger St. Petersburg Open - St. Petersburg Shenzhen 2 Challenger Delray Beach International Tennis Championships - Delray Beach Serbia Open - Belgrade New Delhi Challenger Mercedes Cup - Stuttgart BCR Open Romania - Bucharest Wuxi Challenger Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Heineken Open - Auckland Mercedes Cup - Stuttgart BCR Open Romania - Bucharest Kremlin Cup - Moscow Shenzhen 1 Challenger Brisbane International - Brisbane Heineken Open - Auckland Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Serbia Open - Belgrade BMW Open - Munich Open de Nice Cote d'Azur - Nice Chennai Challenger St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Aircel Chennai Open - Chennai Apia International - Sydney VTR Open - Vina del Mar Brasil Open - Sao Paulo SAP Open - San Jose U.S. National Indoor Tennis Championships - Memphis Delray Beach International Tennis Championships - Delray Beach BRD Nastase Tiriac Trophy - Bucharest Portugal Open - Oeiras Power Horse Cup - Dusseldorf Topshelf Open - 's-Hertogenbosch Claro Open Colombia - Bogota BB&T Atlanta Open - Atlanta Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Shanghai Challenger PTT Thailand Open - Bangkok Kremlin Cup - Moscow Royal Guard Open Chile - Vina del Mar Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Open de Nice Cote d'Azur - Nice AEGON Championships - London Topshelf Open - 's-Hertogenbosch Claro Open Colombia - Bogota BB&T Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen China Open - Beijing Kremlin Cup - Moscow Aircel Chennai Open - Chennai Heineken Open - Auckland Ecuador Open - Quito Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Dubai Duty Free Tennis Championships - Dubai US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul Kremlin Cup - Moscow Claro Open Colombia - Bogota Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril Aircel Chennai Open - Chennai Garanti Koza Sofia Open - Sofia Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona BMW Open - Munich Geneva Open - Geneva Aegon Nottingham Open - Nottingham SkiStar Swedish Open - Bastad Winston-Salem Open - Winston-Salem China Open - Beijing Kremlin Cup - Moscow Qatar ExxonMobil Open - Doha ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Grand Prix Hassan II - Marrakech Hungarian Open - Budapest Millennium Estoril Open - Estoril Ricoh Open - 's-Hertogenbosch Bet-at-home Open - Hamburg Citi Open - Washington St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Qatar ExxonMobil Open - Doha Sydney International - Sydney Garanti Koza Sofia Open - Sofia New York Open - New York Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Open Parc - Lyon Ricoh Open - 's-Hertogenbosch Gerry Weber Open - Halle Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Citi Open - Washington China Open - Beijing Kremlin Cup - Moscow Swiss Indoors Basel - Basel Tata Open Maharashtra - Pune Sydney International - Sydney Open Sud de France - Montpellier St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Tata Open Maharashtra - Pune Dubai Duty Free Tennis Championships - Dubai St. Petersburg Open - St. Petersburg Astana Open - Nur-Sultan Sofia Open - Sofia Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Abierto Mexicano de Tenis Mifel - Los Cabos Truist Atlanta Open - Atlanta Citi Open - Washington St. Petersburg Open - St. Petersburg Sofia Open - Sofia Anytech365 Andalucia Open - Marbella Astana Open - Nur-Sultan Tata Open Maharashtra - Pune St. Petersburg Open - St. Petersburg Astana Open - Astana Chengdu Open - Chengdu ABN AMRO World Tennis Tournament - Rotterdam Chengdu Open - Chengdu Dubai Duty Free Tennis Championships - Dubai Open Parc - Lyon Hall of Fame Open - Newport Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Troyes Challenger BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Montreal BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Toronto Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Coupe Rogers - Montreal Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Shanghai Rolex Masters - Shanghai U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group II, 1R, ESA-BAR 4-1 Davis Cup, Group I, 2R, GBR-RUS 3-2 Davis Cup, Group II, 2R, ESA-MEX 3-2 Davis Cup, World Group, PO, CAN-COL 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group I, 1R, RUS-DEN 4-1 Davis Cup, Group I, 2R, URU-COL 2-3 Davis Cup, Group I, 2R, RUS-ESP 3-2 Davis Cup, Group I, 2R, CHI-COL 3-1 Davis Cup, World Group, PO, RUS-KAZ 3-1 Davis Cup, Group I, PO, DOM-COL 1-4 Davis Cup, World Group, PO, COL-CRO 1-4 Davis Cup, Group I, 1R, BAR-COL 0-4 Davis Cup, Group I, 2R, RUS-AUT 1-3 Davis Cup, Group I, 2R, COL-BRA 3-2 Davis Cup, Finals, Group D Davis Cup, Qualifiers, 1R, USA-COL 4-0 U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) French Open (juniors) All Lower level tournaments Davis Cup, World Group, QR, COL-SWE 4-0 Olympics - Rio de Janeiro